--MOD Name
name = "[DST] Musha [重制版]"

-- Mod Authors
author = "风影"

--MOD Version
version = "1.94"

--MOD Description
description = [[
作者：消失的风影
原维护作者：Ciel
原作者：Sunnyyyyholic
Musha完全重置版，详情见创意工坊页面


]]
--link

--MOD priority 优先级设置，需要调整优先级请到这里更改Priority信息
api_version = 10
priority = -100

dst_compatible = true
dont_starve_compatible = false
shipwrecked_compatible = false
reign_of_giants_compatible = false

all_clients_require_mod = true
client_only_mod = false

icon_atlas = "modicon.xml"
icon = "modicon.tex"

server_filter_tags = {"musha"}

--Refer to other mod designs
local function Breaker(title, hover)
	return {
		name = title,
		hover = hover,
		options = {{description = "", data = false}},
		default = false
	}
end

local key_table = {
	{description = "TAB", data = 9},
	{description = "KP_PERIOD", data = 266},
	{description = "KP_DIVIDE", data = 267},
	{description = "KP_MULTIPLY", data = 268},
	{description = "KP_MINUS", data = 269},
	{description = "KP_PLUS", data = 270},
	{description = "KP_ENTER", data = 271},
	{description = "KP_EQUALS", data = 272},
	{description = "MINUS", data = 45},
	{description = "EQUALS", data = 61},
	{description = "SPACE", data = 32},
	{description = "ENTER", data = 13},
	{description = "ESCAPE", data = 27},
	{description = "HOME", data = 278},
	{description = "INSERT", data = 277},
	{description = "DELETE", data = 127},
	{description = "END", data = 279},
	{description = "PAUSE", data = 19},
	{description = "PRINT", data = 316},
	{description = "CAPSLOCK", data = 301},
	{description = "SCROLLOCK", data = 302},
	{description = "RSHIFT", data = 303},
	{description = "LSHIFT", data = 304},
	{description = "RCTRL", data = 305},
	{description = "LCTRL", data = 306},
	{description = "RALT", data = 307},
	{description = "LALT", data = 308},
	{description = "ALT", data = 400},
	{description = "CTRL", data = 401},
	{description = "SHIFT", data = 402},
	{description = "BACKSPACE", data = 8},
	{description = "PERIOD", data = 46},
	{description = "SLASH", data = 47},
	{description = "LEFTBRACKET", data = 91},
	{description = "BACKSLASH", data = 92},
	{description = "RIGHTBRACKET", data = 93},
	{description = "TILDE", data = 96},
	{description = "A", data = 97},
	{description = "B", data = 98},
	{description = "C", data = 99},
	{description = "D", data = 100},
	{description = "E", data = 101},
	{description = "F", data = 102},
	{description = "G", data = 103},
	{description = "H", data = 104},
	{description = "I", data = 105},
	{description = "J", data = 106},
	{description = "K", data = 107},
	{description = "L", data = 108},
	{description = "M", data = 109},
	{description = "N", data = 110},
	{description = "O", data = 111},
	{description = "P", data = 112},
	{description = "Q", data = 113},
	{description = "R", data = 114},
	{description = "S", data = 115},
	{description = "T", data = 116},
	{description = "U", data = 117},
	{description = "V", data = 118},
	{description = "W", data = 119},
	{description = "X", data = 120},
	{description = "Y", data = 121},
	{description = "Z", data = 122},
	{description = "F1", data = 282},
	{description = "F2", data = 283},
	{description = "F3", data = 284},
	{description = "F4", data = 285},
	{description = "F5", data = 286},
	{description = "F6", data = 287},
	{description = "F7", data = 288},
	{description = "F8", data = 289},
	{description = "F9", data = 290},
	{description = "F10", data = 291},
	{description = "F11", data = 292},
	{description = "F12", data = 293},
	{description = "UP", data = 273},
	{description = "DOWN", data = 274},
	{description = "RIGHT", data = 275},
	{description = "LEFT", data = 276},
	{description = "PAGEUP", data = 280},
	{description = "PAGEDOWN", data = 281},
	{description = "0", data = 48},
	{description = "1", data = 49},
	{description = "2", data = 50},
	{description = "3", data = 51},
	{description = "4", data = 52},
	{description = "5", data = 53},
	{description = "6", data = 54},
	{description = "7", data = 55},
	{description = "8", data = 56},
	{description = "9", data = 57}
}

configuration_options = {
	Breaker("语言", "选择你的语言"),
	{
		name = "modlanguage",
		label = "Mod Language",
		hover = "[*]If your server has a cave, you have to select a language.\n[*]케이브 포함 서버인 경우 언어를 선택해야합니다.\n[*]",
		options = {
			{description = "自动", data = -1},
			{description = "English", data = 0},
			{description = "한글", data = 19},
			{description = "中文", data = 22},
			{description = "русский", data = 16}
		},
		default = -1
	},
	Breaker("技能按键"),
	{
		name = "level_info",
		label = "查看等级",
		hover = "显示等级，体力，疲劳，嗅觉，音乐",
		options = key_table,
		default = 108
	},
	{
		name = "skill_ui",
		label = "技能面板",
		hover = "显示技能面板",
		options = key_table,
		default = 107
	},
	{
		name = "specialattackswitch",
		label = "闪电攻击",
		hover = "激活闪电攻击",
		options = key_table,
		default = 114
	},
	{
		name = "shadowhide",
		label = "隐身",
		hover = "隐身并发动背刺",
		options = key_table,
		default = 103
	},
	{
		name = "electricshield",
		label = "闪电护盾",
		hover = "使用闪电护盾",
		options = key_table,
		default = 99
	},
	{
		name = "sniff",
		label = "嗅觉",
		hover = "寻找宝藏",
		options = key_table,
		default = 117
	},
	{
		name = "sing",
		label = "音乐",
		hover = "演奏曲子",
		options = key_table,
		default = 111
	},
	{
		name = "sleep_switch",
		label = "睡眠",
		hover = "切换睡眠（睡觉/醒来）",
		options = key_table,
		default = 116
	},
	Breaker("指令按键"),
	{
		name = "order_musha_yamche_1",
		label = "凤凰指令键",
		hover = "命令: [跟随/取消跟随]",
		options = key_table,
		default = 122
	},
	{
		name = "order_musha_yamche_2",
		label = "凤凰指令键",
		hover = "命令: [保卫，逃走，收集物品]",
		options = key_table,
		default = 98
	},
	{
		name = "order_musha_beefalo",
		label = "牛指令键",
		hover = "命令: [跟随/取消跟随]",
		options = key_table,
		default = 282
	},
	{
		name = "order_musha_moontree",
		label = "树人指令键",
		hover = "命令: [跟随/取消跟随]",
		options = key_table,
		default = 283
	},
	Breaker("游戏设定"),
	{
		name = "difficult_damage",
		label = "难度【攻击】",
		hover = "调整基础攻击系数",
		options = {
			{description = "非常简单(x1.25)", data = 1.25},
			{description = "很简单(x1)", data = 1},
			{description = "简单(x0.75)", data = 0.75},
			{description = "默认(x0.55)", data = 0.55},
			{description = "困难(x0.45)", data = 0.45},
			{description = "自杀(x0.4)", data = 0.4}
		},
		default = 0.55
	},
	{
		name = "difficult_damage_range",
		label = "难度【范围攻击】",
		hover = "调整狂暴状态基础攻击系数",
		options = {
			{description = "非常简单(x1.35)", data = 1.35},
			{description = "简单(x1.2)", data = 1.2},
			{description = "默认(x1)", data = 1},
			{description = "困难(x0.9)", data = 0.9},
			{description = "自杀(x0.75)", data = 0.75}
		},
		default = 1
	},
	{
		name = "difficult_mana",
		label = "能量回复",
		hover = "调整能量回复速度",
		options = {
			{description = "非常简单", data = 0.5},
			{description = "简单", data = 0.2},
			{description = "一般", data = 0.1},
			{description = "困难", data = 0.06},
			{description = "地狱", data = 0.04}
		},
		default = 0.1
	},
	{
		name = "difficulty_sniff",
		label = "嗅觉填充",
		hover = "调整找到宝藏的速度",
		options = {
			{description = "简单", data = 1.25},
			{description = "一般", data = 1},
			{description = "困难", data = 0.85},
			{description = "极困难", data = 0.75}
		},
		default = 1
	},
	{
		name = "difficult_music",
		label = "音乐填充",
		hover = "调整在睡眠时填充音乐的速度",
		options = {
			{description = "非常简单", data = 2},
			{description = "简单", data = 1.5},
			{description = "一般", data = 1},
			{description = "困难", data = 0.65},
			{description = "极困难", data = 0.4}
		},
		default = 1
	},
	{
		name = "difficult_tired",
		label = "疲劳",
		hover = "移动时疲劳的增长速度",
		options = {
			{description = "非常简单", data = 0.6},
			{description = "简单", data = 0.8},
			{description = "一般", data = 1},
			{description = "困难", data = 1.2},
			{description = "极困难", data = 1.35}
		},
		default = 1
	},
	{
		name = "difficult_sleep",
		label = "体力",
		hover = "移动时体力的下降速度",
		options = {
			{description = "非常简单", data = 2},
			{description = "简单", data = 1.5},
			{description = "一般", data = 1},
			{description = "困难", data = 0.5},
			{description = "极困难", data = 0.25}
		},
		default = 1
	},
	{
		name = "musha_level_difficulty",
		label = "升级难度",
		hover = "设置获得经验升级的难度",
		options = {
			{description = "很简单(x0.5)", data = 0.5},
			{description = "简单", data = 1},
			{description = "一般(x1.5)", data = 1.5},
			{description = "极困难(x2.5)", data = 2.5}
		},
		default = 1
	},
	{
		name = "musha_intelligence",
		label = "知识",
		hover = "设置musha自带的科技等级",
		options = {
			{description = "平常人(+0)", data = 0},
			{description = "聪明(+1)", data = 1},
			{description = "天才(+2)", data = 2}
		},
		default = 0
	},
	{
		name = "share_items",
		label = "装备共享",
		hover = "设置musha能否与其他人分享她的专用装备",
		options = {
			{description = "否", data = false},
			{description = "是", data = true}
		},
		default = false
	},
	{
		name = "no_butterfly_shield",
		label = "冰霜战甲护盾",
		hover = "能否使用冰霜战甲的强化护盾",
		options = {
			{description = "是", data = 1},
			{description = "否", data = 2}
		},
		default = 1
	},
	{
		name = "moontree_spawn",
		label = "树人仆从",
		hover = "树人是否将会自动生成仆从",
		options = {
			{description = "是", data = true},
			{description = "否", data = false}
		},
		default = true
	},
	{
		name = "lightning_sound",
		label = "闪电音效",
		hover = "闪电攻击时是否播放音效",
		options = {
			{description = "Enable", data = true},
			{description = "Disable", data = false}
		},
		default = true
	},
	{
		name = "no_armor_limit",
		label = "盔甲限制",
		hover = "你能否随身携带多个musha护甲",
		options = {
			{description = "否", data = false},
			{description = "是", data = true}
		},
		default = false
	},
	Breaker("配方设定"),
	{
		name = "convertgem",
		label = "宝石配方",
		hover = "设置基础宝石的制造方法",
		options = {
			{description = "仅仅转换", data = true},
			{description = "无中生有", data = false}
		},
		default = true
	},
	{
		name = "raregemrecipes",
		label = "更多宝石",
		hover = "设置是否能制造稀有宝石",
		options = {
			{description = "是", data = true},
			{description = "否", data = false}
		},
		default = false
	},
	{
		name = "rabbitrecipe",
		label = "兔子帽配方",
		hover = "设置制造兔子帽需要的材料",
		options = {
			{description = "兔毛球", data = false},
			{description = "沙漠护目镜", data = true}
		},
		default = true
	},
	Breaker("Musha设置"),
	{
		name = "princess_sleep",
		label = "睡眠",
		hover = "她能否在白天睡觉",
		options = {
			{description = "不能", data = false},
			{description = "能", data = true}
		},
		default = true
	},
	{
		name = "princess_taste",
		label = "进食",
		hover = "她能否在饥饿度高于90%时进食",
		options = {
			{description = "能", data = false},
			{description = "不能", data = true}
		},
		default = true
	},
	{
		name = "edible_food_type",
		label = "食物偏好",
		hover = "设置musha能吃的食物，当饥饿度低于警戒值时将无视此规则",
		options = {
			{description = "全部", data = "normal"},
			{description = "只有肉类", data = "meat"},
			{description = "只有蔬菜", data = "veggie"}
		},
		default = "normal"
	},
	{
		name = "dis_food_type",
		label = "不喜欢的食物类型",
		hover = "食用不喜欢的食物时将会受到精神值惩罚",
		options = {
			{description = "没有", data = "normal"},
			{description = "讨厌肉类", data = "MEAT"},
			{description = "讨厌蔬菜", data = "VEGGIE"}
		},
		default = "normal"
	},
	{
		name = "shadowhide_real",
		label = "隐身",
		hover = "设置当你隐身后其他玩家能发看见你",
		options = {
			{description = "可以", data = false},
			{description = "不能", data = true}
		},
		default = false
	},
	{
		name = "hud",
		label = "HUD",
		hover = "设置你的界面风格",
		options = {
			{description = "风格 01", data = 1},
			{description = "风格 02", data = 2}
		},
		default = 1
	},
	{
		name = "avisual_musha",
		label = "Visual of Musha backpack",
		hover = "Change visual of back",
		options = {
			{description = "None", data = "off"},
			{description = "Pack-Mini", data = "Bmm"},
			{description = "Pack-Tiny", data = "BT"},
			{description = "Pack-Small", data = "BS"},
			{description = "Pack-Med", data = "BM"},
			{description = "Pack-Large", data = "BL"},
			{description = "Wing-S-pink", data = "WSP"},
			{description = "Wing-S-red", data = "WSR"},
			{description = "Wing-S-blue", data = "WSB"},
			{description = "Wing-S-hybrid", data = "WSH"},
			{description = "Wing-L-red", data = "WLR"},
			{description = "Wing-L-blue", data = "WLB"}
		},
		default = "Bmm"
	},
	{
		name = "avisual_princess",
		label = "Visual of Princess backpack",
		hover = "Change visual of back",
		options = {
			{description = "None", data = "off"},
			{description = "Pack-Mini", data = "Bmm"},
			{description = "Pack-Tiny", data = "BT"},
			{description = "Pack-Small", data = "BS"},
			{description = "Pack-Med", data = "BM"},
			{description = "Pack-Large", data = "BL"},
			{description = "Wing-S-pink", data = "WSP"},
			{description = "Wing-S-red", data = "WSR"},
			{description = "Wing-S-blue", data = "WSB"},
			{description = "Wing-S-hybrid", data = "WSH"},
			{description = "Wing-L-red", data = "WLR"},
			{description = "Wing-L-blue", data = "WLB"}
		},
		default = "WSP"
	},
	{
		name = "avisual_pirate",
		label = "Visual of Pirate backpack",
		hover = "Change visual of back",
		options = {
			{description = "None", data = "off"},
			{description = "Pack-Mini", data = "Bmm"},
			{description = "Pack-Tiny", data = "BT"},
			{description = "Pack-Small", data = "BS"},
			{description = "Pack-Med", data = "BM"},
			{description = "Pack-Large", data = "BL"},
			{description = "Wing-S-pink", data = "WSP"},
			{description = "Wing-S-red", data = "WSR"},
			{description = "Wing-S-blue", data = "WSB"},
			{description = "Wing-S-hybrid", data = "WSH"},
			{description = "Wing-L-red", data = "WLR"},
			{description = "Wing-L-blue", data = "WLB"}
		},
		default = "BL"
	},
	{
		name = "avisual_pirate_armor",
		label = "Pirate Armor parts",
		hover = "Change visual of Pirate Armor",
		options = {
			{description = "Chest", data = "Chest"},
			{description = "Pirate", data = "Pirate"},
			{description = "Musha", data = "Green"},
			{description = "Princess", data = "Pink"},
			{description = "Frost", data = "Blue"}
		},
		default = "Pirate"
	}
	--[[{
		name = "bodyguardwilson",
		label = "Wilson",
		hover = "Bodyguard Wilson (random skill)",
		options = {
			{description = "Enable", data = true},
			{description = "Disable", data = false}
		},
		default = false
	}, ]]
}
